7. 위임 숨기기
- 모듈화 설계를 제대로 하는 핵심은 캡슐화
- 클라이언트가 위임 객체의 존재를 몰라도 되도록 감춤
절차
- 위임 객체의 각 메서드에 해당하는 위임 메서드를 서버에 생성한다.
- 클라이언트가 위임 객체 대신 서버를 호출하도록 수정한다. 하나씩 바꿀 때마다 테스트한다.
- 모두 수정했다면, 서버로부터 위임 객체를 얻는 접근자를 제거한다.
- 테스트한다.
예시 코드
😞 Before
const manager = aPerson.department.manager
😃 After
const manager = aPerson.manager
class Person {
get manager() {
return this.department.manager
}
}